import '../css/style.scss';
import { relative } from 'path';

// var root_url = 'http:localhost:3000';
window.login = function(e){
    var usename = $(e).parent().find('#usename').val().trim();
    var password = $(e).parent().find('#password').val().trim();
    var yzm = $(e).parent().find('#yzm').val().trim();
    if(!usename || !password){
        alert('用户名与密码为必填项！');
        return false;
    }
    if(yzm != window.yzmtext){
        alert('验证码错误！');
        return false;
    }
    $.ajax({
        type:'post',
        url:'/api/admin/login',
        data:{
            usename:usename,
            password:password
        },
        success:function(data){
            if(data.status){
                window.location.href = '/admin/main';
            }else{

            }
        },
        error:function(){
            console.log('err');
        }
    })
}
/*验证码 -- 生成4位随机数*/
window.rand = function(){
    var str="abcdefghijklmnopqrstuvwxyz0123456789";
    var arr=str.split("");
    var validate="";
    var ranNum;
    for(var i=0;i<4;i++){
     ranNum=Math.floor(Math.random()*36); //随机数在[0,35]之间
     validate+=arr[ranNum];
    }
    window.yzmtext = validate;
    return validate;
}
/*干扰线的随机x坐标值*/
window.lineX = function(){
    var ranLineX=Math.floor(Math.random()*90);
    return ranLineX;
}
/*干扰线的随机y坐标值*/
window.lineY = function(){
    var ranLineY=Math.floor(Math.random()*40);
    return ranLineY;
}
window.clickChange = function(){
    var mycanvas=document.getElementById('yzm_img');
    var cxt=mycanvas.getContext('2d');
    cxt.fillStyle='#000';
    cxt.fillRect(0,0,90,40);
    /*生成干扰线20条*/
    for(var j=0;j<20;j++){
        cxt.strokeStyle='#fff';
        cxt.beginPath(); //若省略beginPath，则每点击一次验证码会累积干扰线的条数
        cxt.moveTo(lineX(),lineY());
        cxt.lineTo(lineX(),lineY());
        cxt.lineWidth=0.5;
        cxt.closePath();
        cxt.stroke();
    }
    cxt.fillStyle='red';
    cxt.font='bold 20px Arial';
    cxt.fillText(rand(),25,25); //把rand()生成的随机数文本填充到canvas中 
}

// //侧边菜单函数
window.toggle = function(e){
    var li_elem = $(e).parent();
    var ul_elem =  $(e).parent().parent().parent();
    if(li_elem.hasClass('open')){//关
        //判断是否有子栏目
        if(li_elem.find('ul').length){
            if(li_elem.find('ul').hasClass('d-none')){
                li_elem.find('ul').removeClass('d-none');
                li_elem.find('ul').slideDown();        
            }else{
                li_elem.find('ul').addClass('d-none');
                li_elem.find('ul').slideUp();
            }
        }else{
            //不做处理
        }
    }else{//开
        let tag = ul_elem.find('.open').find('ul').length;
        if(tag){
            ul_elem.find('.open').find('ul').slideUp();
            ul_elem.find('.open').find('ul').addClass('d-none');
            ul_elem.find('.open').removeClass('open');
            ul_elem.find('.active').removeClass('active');
            li_elem.addClass('open');
            li_elem.find('ul').removeClass('d-none');
            li_elem.find('ul').slideDown(); 
        }else{
            ul_elem.find('.open').removeClass('open');
            li_elem.addClass('open');
            if(li_elem.find('ul').length){
                li_elem.find('ul').removeClass('d-none');
                li_elem.find('ul').slideDown();
            }else{
                //不做处理
            }
        }  
    }
}
window.change = (url='/admin/login',e)=>{
    $(e).parent().parent().parent().parent().find('.active').removeClass('active');
    $(e).parent().addClass('active');
    loading($('#cont'),true);
    $('#cont').load(`/admin/${url}`,loading($('#cont'),false));    
}
window.loading = (ele,tag)=>{
  //出现蒙版
  if(tag){
    var block = $('<div id="block"><div style="width:100%;height:100%;background:#fff;position:absolute;top:0;left:0;z-index:20;opacity:0.5;"></div><img style="width: 100px; height: 100px; display: inline;position:absolute; z-index: 1006;opacity:1;left:50%;top: 45%;margin-left:-40px;margin-top:-40px;" width="400" height="300" border="0" vspace="0" class="load" src="/public/img/loading_gif.gif"></div>');
    ele.append(block);
  }else{
    $('#block').remove();
  }
}

//爬虫操作
window.crawler = ()=>{
    let url = $('#Url').val();
    $.ajax({
        type:'post',
        url:'/api/admin/crawler_start',
        data:{
            url:url
        },success:function(data){
            var socket = io.connect('http://localhost:3001');
            socket.on('news', function (data) {//接收到服务器发送过来的名为'new'的数据  
                data = data.data;
                for(var i = 0;i<data.data.length;i++){
                    let ele = $(`
                    <tr>
                        <td>${data.data[i].title}</td>
                        <td><img style="height: 70px;" src="${data.data[i].imgHref}" alt=""></td>
                        <td>${data.data[i].fanhao}</td>
                        <td>${data.data[i].href}</td>
                    </tr>
                    `);
                    $('.container tbody').append(ele);
                } 
            });  
            socket.on('end', function (data) {//接收另一个名为'other'数据，  
                socket.shutdown();
                alert('爬取结束');
            });  

        },error:function(){
            alert('err');
        }
    })

}